/* Banner */

.banner {
  position: relative;
  width: 100%;
  height: 100px;
  text-align: center;
  background-image: linear-gradient(rgba(180, 180, 180, .8), rgba(230, 230, 230, 0));
  margin-bottom: 2em;
}

.banner h1 {
  position: relative;
  font-size: 4em;
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  letter-spacing: 2px;
  color: rgba(250, 250, 250, .9);
  text-shadow: 4px 5px 4px rgba(150, 150, 150, .8);
}

/* flex Container */

.flex-container {
  position: relative;
  display: flex;
  width: 90vw;
  margin: 0 auto;
  text-align: center;
}

.flex-container .flex-item {
  width: 30vw;
}

.flex-container .flex-item .img {
  min-width: 250px;
  min-height: 250px;
  width: 22vw;
  height: 22vw;
  box-shadow: 5px 5px 20px rgba(0, 0, 0, .5);
  background-size: cover;
  background-position: center;
  border-radius: 100%;
  margin: 0 auto;
  transition: .5s ease;
}

.flex-container .flex-item .img:hover {
  transform: scale(1.05);
}

#img1 {
  background-image: url("../Pictures/family.jpg");
}

#img2 {
  background-image: url("../Pictures/foto-mirjam.jpg");
  background-position: top;
  transform: scale(.85);
}

#img2:hover {
  transform: scale(.90);
}

#img3 {
  background-image: url("../Pictures/butterflies.jpg");
  background-position: right;
}

.flex-container .flex-item h2 {
  color: black;
  margin: 30px 10px 20px 10px;
  font-size: 18px;
  letter-spacing: .05em;
}

.flex-container .flex-item p {
  color: black;
  margin: 10px 20px;
  font-size: 15px;
}

.btn {
  margin: 2em 0;
  color: grey;
  display: inline-block;
  border: 3px solid grey;
  padding: 10px;
  transition: .5s ease;
  border-radius: 50px;
}

#hiddenbtn1 {
  margin-top: 3em;
}

#hiddenbtn2 {
  margin-top: 1.6em;
}

.btn:hover, .btn:active {
  transform: translate(3px, 2px);
  background-color: grey;
  color: white;
}

#hiddenp1, #hiddenp2 {
  display: none;
}

/* Footer */

.footer {
  top: 60px;
}

/* Responsive */

@media only screen and (max-width: 900px) {

  /* Banner */

  .banner {
    margin-bottom: -4em;
    top: -3em;
  }

  .banner h1 {
    font-size: 2.5em;
  }

  /* flex Container */


  .flex-container {
    top: 50px;
    flex-direction: column;
    width: 70%;
    margin-bottom: 4em;
  }

  .flex-container .flex-item {
    width: 70vw;
  }

  #img2 {
    transform: scale(1);
  }

  #img2:hover {
    transform: scale(1.05);
  }
}

@media only screen and (max-width: 600px) {

  .flex-container .flex-item p {
    font-size: 12px;
    margin: 0;
  }

}
